#!/bin/sh

# 使用说明，用来提示输入参数
usage() {
	echo "Usage: sh 执行脚本.sh [port|redis|nacos|taosadapter|seata]"
	exit 1
}

# 开启所需端口
port(){
	firewall-cmd --add-port=80/tcp --permanent
	firewall-cmd --add-port=1883/tcp --permanent
	firewall-cmd --add-port=8083/tcp --permanent
	firewall-cmd --add-port=8084/tcp --permanent
	firewall-cmd --add-port=18083/tcp --permanent
	firewall-cmd --add-port=8080/tcp --permanent
	firewall-cmd --add-port=8848/tcp --permanent
	firewall-cmd --add-port=6379/tcp --permanent
	firewall-cmd --add-port=3306/tcp --permanent
	service firewalld restart
}

# 启动redis基础环境（必须）
redis(){
  cd /home/redis/bin
  ./redis-server ../redis.conf &
}

# 启动nacos基础环境（必须）
nacos(){
  cd /usr/local/nacos/bin
  ./startup.sh -m standalone
}

# 启动tddb连接器基础环境（必须）
taosadapter(){
  systemctl start taosadapter
  curl -L -H "Authorization: Basic cm9vdDp0YW9zZGF0YQ==" \
    -d "select name, ntables, status from information_schema.ins_databases;" \
    127.0.0.1:6041/rest/sql
}

# 启动seata基础环境（必须）
seata(){
  cd /home/seata/bin/
  ./seata-server.sh
}


# 根据输入参数，选择执行对应方法，不输入则执行使用说明
case "$1" in
"port")
	port
;;
"redis")
	redis
;;
"nacos")
	nacos
;;
"taosadapter")
	taosadapter
;;
"seata")
	seata
;;
*)
	usage
;;
esac
